Digital Candy - Coding index`s - Information -------------------------------------------- This file contains index`s and information for both the 'Asm' area`s and the C area`s of the CD. You may wish to browse through this file find items of interest before scanning all the directories and files.. After all this would take a long time since there`s around 50 megabytes and around 5,000 files...(!) The Candy Sysop Team... -- Assembly Language (Source-codes) Index with brief descriptions -- -[ Asm/Demos ]--------------------------------------------------------------- The below routines are primarly concerned with producing demo`s, some nice effects are present, some could be used in games too but most are best suited to demo creation. Note not all demo`s will work on all machines, particularly aga ones that are accelerated. usually its the 'startup' code, i.e the os shutdown/restore routines or they don`t blitwait correctly, or use bad timing loops. If no demo`s work (i.e they don`t do anything) then you need to install the 'exsys.library' in your libs: directory. This is a 'os shutdown' library which should help with compatibility. Quite a few demo`s have been fixed to work, but not all of them as its a very time consuming task.. 3DStars_Type1 : 3D Starfield routine, joystick controlled BitmapRotation : Bitmap rotation using chunky pixel conversion BlitterScreen : Blitter screen pseudo-chunky, better than chunky? Bob_GravityBalls : Very Nice example of gravity, with bouncing balls! Bob_ShadeBobs : Colour Shade bobs, as used in various demos CopperBarlen : Cycle bar effect, another copper effect CopperCycle : Another color cycler effect, more copperlist fun CopperCycle24Bit : Very nice 24-Bit AGA with generated picuture.. CopperGelly : Copperlist used to do wobbly jelly effect CopperScroller : Large Textscroller drawn using the Copperlist! DotTunnel : Full screen dots tunnel effect, very smooth 50fps EXSyslib : Safe OS shutdown routines via shared library Fractals : Graphical demonstration of realtime fractal graphics FuzzyScreen : Television Style Off-Channel interefence HowToSkinACat : Full source-code to an excellent demo with AGA bits InterferenceCircles : MTV style interference circles, an old trippy effect NorthStarDemo : Demo from defunct NorthStar, scrolling, bobs, etc OutcastMag : Well designed, magazine front-end, nice looks & feel ParallexMountains : Shows the Amiga`s Parallex scrolling hardware off! Plasma_CopperPMC : Great copperlist plasma effect, by Pure-Metal-Coders Plasma_CopperRGB : Decent copperlist RGB plasma effect Plasma_GlobalTrash : Smart looking copperlist plasma, very smooth 50fps RetinaRave : Dimension-X`s Rave demo, RetinaDemo, okayish demo SineScroll_1 : Various methods of doing Sine-Scrollers.. SineScroll_2 : Various methods of doing Sine-Scrollers.. SineScroll_3 : Various methods of doing Sine-Scrollers.. SpaceballsCrktro : Well designed, very trippy spaceballs crkdemo TextWriter : Blitpixel positioning character color text writer Vectors_Bootblock : Vectors in less than 1-Kbyte! Drawn in a bootblock Vectors_ColorMorph : Good Color Vectors, morphing into various shapes Vectors_HiddenLine : Hidden-Line Removal vector shapes, commented Vectors_Landscape : Mono-vector mapped terrain, not very well written Vectors_Lightsourced : Well used vector box with full light-sourcing XmasDemo : Nice chrismas themed demo, with `real snow' honest ZoomBalls : Copperlist zoomed Graphic bob balls, nice effect -[ Asm/Games ]--------------------------------------------------------------- The below routines are primarly concerned with producing games, they include some very good advanced examples of reading keyboard and joysticks/pads in safest possible way. Also 8-ways scrolling is shown which is a must for some types of arcade games. BlockScroller : Horizonal screen scroll with very little rastertime CpuCaches : Enable/disable cpu caches without OS Cache function IFFDecrunch : IFF-Form picture decompression, full AGA support MapScroller : Scroll through a virtual screen graphics map Packman : Play a simple game of packman, not fully complete RandomNumber : Create random numbers for various events, etc. 020+ ReadCD32PadFixed : Safe, reliable CD32-Joypad Reader that works on 060! ReadJoystick : Advanced Joystick reader with lots of flagged events ReadKeys : Advanced Keyboard reader handling qualifers, etc. ScanConfig : Scans for OCS/ECS/AGA/ WB & OS Version, CPU, etc. Scrolling_8way : Full 8-Way scrolling method with explanations ShootEmUp : A simple shootem up game of some kind, pretty crude SpriteGrabber : Full sprite maniplation/grab tool with BMP support TakeOver : Take over system in the most reliable, safest way! TextureMapping : Very good full-screen texture mapping, like doom. -[ Asm/Misc ]---------------------------------------------------------------- Only a few routines present here, ExecPorts is very interesting for inter- task communication in a multitasking environment, useful to relay information from other running tasks between multiple programs. ASL_Requestors : Asl file-requesters demonstration ExecPorts : Use powerful execports to send info between tasks PlanarConversions : Various methods of conversion beetween chunky gfx PrintfText : Flexible 'printf' style formatting from asm ProgressBar : Examples showing percentage done progress bars QuickSort : Famous Sorting algorithm with examples shown -[ Asm/Music ]--------------------------------------------------------------- Version 2.x of the full ProTracker program is included here, please note that this version is not very stable on aga amiga`s with accelerator cards and is not written with very system friendly code so perhaps YOU can write the ultimate protracker based on the sources? Also included are many different optimised protracker replayers for your games and demos. ProTracker : Full source-code to the famous ProTracker utility Replayers : Various music formats replaying sources SamplePlayers : Examples of play sound samples under IRQ control -[ Asm/Pack/ ]--------------------------------------------------------------- Lots of different compression algorithm implementations and packing utilities are contained in this section, some have very good compression ratio`s others are fast at decompression, the choice is yours depending on your needs. Some good ones here for all sorts of purposes, also included is use of xpk master library for extended compression ability using sub-libraries. ByteKiller : CLI Tool, packing/depacking (ByteKiller Algorithm) CrunchMania : Fast/Normal Crunchmania LZ-Huffamn decompression DecrunchLib : Pack/Unpack data using decrunch.library package DR0 : CLI Tool, packing/depacking (DR0 Algorithm) Fuk : Decrunch this not very well known packing format IFF : Decrunch IFF-FORM files and non-aga palette`s Imploder : CLI Tool, packing/depacking (Imploder Algorithm) Mirage : CLI Tool, packing/depacking (Mirage Algorithm) PowerPacker : A fast and normal PowerPacker data decruncher PPDecrypt : Decrypt PowerPacker Encrypted password data Sample_ADPCM : Pack/Unpack ADPCM 7:1 (lossy) sample algorithm XPKLibs : Pack/Unpack data using XPKMaster libs package -[ Asm/Utils ]--------------------------------------------------------------- Some general purposes tools, like the 'IFFMaster Pro' utility which is a full blown (and very good) AGA iff conversion tool with full source-code in the archive. Most utilites are written using the OS hence you may need to own a set of operating system include files or try to use the OS3_GST.I file as described elsewhere. Again like with C the native developers kit is recommended for OS utility writing but with assembly its not as 'essential' as in C.. you may get away with using the 'os3_gst.i' file.. BangerMenu : Early bootup startup-sequence selection program BeerMon : Very good memory-monitor/tracer/disassembler Comm8n1device : Replaces 'serial.device', faster,reliable transfers Cosaque : Sine creation tool, with easy to use gui for wb use Crossword : Crossword creator/solver program with nice WB GUI CryptDevice : IDEA Encryption device, filesystem within a file DigitalClock : Clock for workbench with a nice digital display DirTool : Replacement dir command DosInfo : Replacement info command Echo : Replacement echo command EXTermShell : Basic framework for a comms package in assembly Finnslator : Speech Translation library FKey : Assign f-keys to your own purposes Flushlibs : Flushes unused libraries from precious memory FReadTyper : Type text to screen using buffered I/O mechanism FullWindow : Force cli window to maximum screen limits GadgetTest1 : Examples of using system gadgets version 1 GadgetTest2 : Examples of using system gadgets version 2 Hunk : Display hunk-structure of an AmigaDOS object file IFFMasterPro : Full rewrite of IFFMaster converter supporting AGA! KeyLock : Lock keyboard and mouse until password is entered Killcard : Kill CC0: PCMCIA port device,removes its IRQ, etc KwikCopy : Full diskcopier!, (bangs Hardware) Not new A1200`s MakeBoot : Create, calculate checksums & install new bootblocks Mouse : Change speed of mouse-sprite movement MoveVBR : Relocates VectorBase (VBR) into chipram or fastram NewBench : Creates another new workbench screen NoClick : Stops disk-drives clicking on KS2.x and above NoGuru : Patches Guru-meditations to force a hard-reset Paddle : Test joystick/joypad paddles in various ports PatchFor020 : Patches programs to FASTER 020 code for better speed ProDMSChecker : DMS checker/stripper adder, as used by many bbs`s RecoqLib : File-recognition library, with percentage-ascii,etc. Sano : Example of Speech using finslator library SatPic : Weather Satellite Picture Reciever via parallel port ShellSort : Replacement cli 'sort' command, very fast.. SoftReset : Perform a soft-reset of machine TagScreens : Patches OS1.3 screen code to 3D-look OS2.x+ Screens TextExtract : Extracts file-id descriptions from textfiles quickly TolleUhr : A Very configurable system workbench clock tool Wildstar : Patches OS to use * pattern matching instead of #? ZShell : Replacement shell environment with lots built in ----------------------------------------------------------------------------- -- The C Language (Source-codes) Index with brief descriptions -- -[ AmiExpress ]-------------------------------------------------------------- Ami-Express BBS has been the 'de facto' standard for BBS`s running Amiga `scene' related boards. The software may not be the most feature packed but it is well liked for its ease of use for the user interface - it is most definately is not the best written but has some good ideas and is a good base to learn about BBS systems for those who are interested. Thousands of doors exist for /X bbs and quite a few are included here... The full working source-code to Ami-Express v3.x BBS is given here along with a multitude of Ami-Express specific BBS doors. The version of /X given here is not the PD released version 3.xxbeta but an update based on it and is more like Ami-Express version 4 than 3 - see revision docs to know differences. Express is currently setup to compile using SAS/C. Changes may be needed for other c compilers. Contained here is almost everything related to /X that you could ever need.. Ever wanted to write your own version of /X? nows your chance! a2232 : various information on the a2232 serial card access : change a users conference access from a door accountant : subscriptions door for payment from users of a bbs acnt : external account editing software door acp3.00 : Ami-Express controller 'acp' BBS (see docs for more) acpcmd : door for remote sysops to give `acp' command power acs : query a users access to particular conferences aeconf : external 'join conference' modular door aecontrol : arexx, not c, to auto add warp test to dms,lha,etc aedex : create registered versions of ami-express `main' aedoor : description of how to write /X exernal doors in c aehelp : external help door, describes all internal door aemove : moves directories of files from one conf to another aepatch2.33 : patch tool for /X2.33 to prevent hacking via mci aeshell : shell access via, give full cli access from remote aever : display current stats of version of express aever2.33+ : automatic online registation of express bss for 2.33 alignval : ensures that validate.dat is properly aligned amixpr : external transfer protocol door (eg. xprzmodem) areamgr3.00 : change area name from one name to another asl : example of using asl multiselect file requester in c auxed : edit a file using emac`s from remote terminal ax3.00 : ami-Express 'express' BBS program (see doc for more) axval : bbsbackup : ami-Express bbs structure backup utility.. bugs : details of bugs experienced by /X bbs sysops bull : external bulletins door chat : another chatting door for multi user access cli : conacp3.00 : confaccess : conftest : confx : convertdb : convmsg : copyobj : dand : dungen master online textbased game.. diary : users leave sysop msg`s which get appended in 1 file dirpurge : displaydoor : donateStat : another paying user donation door encrypt : converts old user data`s to use encrypted passwords enter : filecheck : filecheck demo, check file passes checkers. filecheck234 : filecheck demo, check file passes checkers. filedate : filestatus : flagedit : edit the list of flagged files for transfer.. flagfile : external flag files door flagfile233 : external flag files door forms : fulledit : full screen ansi text editor (quite slow) getobj : global : group : hacker : index : lognet3.00 : transfer files between Ami Express network lowmsg3.00 : mailstat : mall : msg2.34 : msgpack : msgunpack : msgval : multichatdoor : door for multiuser bbs`s, a multinode chat door multinode : door for multiuser bbs`s, a multinode chat door newchat : door for multiuser bbs`s, a multinode chat door newchat233 : door for multiuser bbs`s, a multinode chat door newver : nup : display new user password for current node offline : proc : readback2.33+ : read textfile backwards.. reboot : reboot machine, performs a soft reset rexxdoor2.33+ : rngmsg2.34 : rngmsg3.00 : romconf : searchmsg2.34 : find textstring in msgbase searchmsg3.00 : find textstring in msgbase shell : another sysop shell door, with complex interface stripdupe : strip duplicate file`s from conference dir`s systemtag : example of system taglist program execution sysup : Local sysop upload external module.. term : remote terminal tool, login to bbs`s via express update : automatic online registation of /X user : backup user data and remove inactive accounts usersdb : convert user.data info into userdb file format vault : give user tempory high security clearance.. WallInTheHood : login door allowing users to write anonymous remarks what : very good who door showing use transfer activities who : external who door (for 10 node /X, not 32 nodes) window : external local sysop text editor in window xpr : external xpr library source-code zerobyte : create zerobyte files for dir`s / files in confs zoome : external mail pack (zoom) door -[ C General ]--------------------------------------------------------------- Some general purpose code, we have tried to include all the C compilers with full source-code as possible in an attempt to help you get a decent working C compiler (or possibly update and develop your own). The best pd compiler is without doubt GCC - This is included (despite being accessible on the Aminet collections) for completeness. Please note however that GCC is very resource-intensive - We would certainly recommend SAS/C since most sources will compile without problems with Lattice , it is fully ansi complient and is probably the best (currently) Amiga commerical c compiler. IF you intend to develop seriously in C you will need a pretty decent amiga, with at least around 6 meg+ and HD, with 16 megabytes and gigabyte hard-disk being most definately recommended for anything `serious'. BEFORE being able to compile -anything- you will most certainly need the 'include' files. Contact Amiga Technologies and get the native amiga developers kit or buy a commercial c compiler to get them. If you get the native kit it should only cost around 20 pounds and contains a lot of very useful source-code and reference materials. AnalogJoystick : read state of an analogue joystick using the os bsprite : turn on border sprites on workbench for mouse cc : unix style frontend for Dice/SAS/C programming CCLib : full 'amiga.lib' implemented as a shared library CDSpeed : toggle cd flags to make CD-Player`s go full speed! ChangeDir : cached dos 'cd' lists for blitz speed dir changes Chunker : portable file splitter, amiga, pc, mac, unix, etc. ciatimer : examples of using ciaa timing (the os friendly way) Clipboard : functions providing standard clipboard functions compiler : implementation of a portable '68000 C Compiler' compression_slz : compression/decompression using slz algorithm conpackets : example of using dos 'con' packets / console crmscrunch : example of using 'crm.library' to crunch from c cshell : another replacement shell , like zshell only in c.. ctimer : accurately time how long a specific function takes dependantscan : automatically create & maintain makefiles DupeFinder : scan deep nested directories for duplicate files.. FileZap : disk based file zapper utility (like a hex editor) FontMaker : amiga bitmap fonts assembler and disassembler fp_adpcm : various adpcm sample compression tools Fullbench : remove workbench title giving a full workbench gameboy : emulate a gameboy on your amiga, here is how to.. GetFreeSpace : check amount of free space on any device a68k : well known 'a68k' assembler, last updated version pdc : C complier (with source) 'Publicly distributable C' hello_localized : example of how to language localize your programs hydra : amiga implemented hydra bi-directional transfer jpegagasrc : various sources for jpeg image handling jpeglib5b : library of routines for support of jpeg images jpeg_ham8 : view 24-bit jpeg images in ham-8 (16.7 million cols) Lha_Axeman : axeman`s custom version of lha archiver for amiga LocalLoginPW : portable example of a login/logout system memleak_1.0 : Allows developers to check programs for memory leaks northc : C compiler, (no src) can be used for development nullmodem : fake modem, easly test remote bbs/term connections patchlist : display list of patches made by the patch library Moned : monitor type editor for tweaking multisync monitors RamSpeed : benchmarking, calc speed of access to fast/chip ram RDB : show information about your HD`s rigid disk block scanner : create source for gui`s of open screens/windows/gads sfragmem : show fragmentation of memory (visual representation) snoopdos_source : well know 'snoopdos' program, v.good to learn from snowfall : demo of snow falling to bottom of screen & settling Term4 : Well known `term' labelled as the best comms program TinyTerm : small implementation of a communications program toollib : a shared library containing 46 useful functions umentiler : document compiler tool, source compiles with sas/c unix : 80 useful functions for porting unix progs to amiga unixdirsii : patches os shell environment to use unix conventions uucode : encode/decode binaries into ascii for email sending vbcc : freeware 'portable' ansi c compliant c compiler viewt : show/add tooltypes of an icon from shell window xprd : how to use external protocol libraries (xprzmodem) XPRZModem_Zedzap : xprzmodem (zedzap version) based on xprzmodem xvectors : various vector routines (not very fast at all!) Zoo : amiga implementation of 'zoo' compress archiver ------------------------------------------------------------------------------ End.